<template>
<!--    问题：我们不知道什么时候能够拿到 max 值，但是总归有一刻会得到一个真正的 max 值-->
<!--    我们可以使用 watch 属性监听，来监听父组件传递过来的 max 值，不管 watch 会被触发几次，但是最后一次，肯定是一个合法的max 数值-->
    <div class="mui-numbox" data-numbox-step='1' data-numbox-min='1' :data-numbox-max='max'>
        <button class="mui-btn mui-numbox-btn-minus" type="button">-</button>
        <input class="mui-numbox-input" type="number" id="numbox" @change="countChanged" ref="number"/>
        <button class="mui-btn mui-numbox-btn-plus" type="button">+</button>
    </div>
<!--    分析：子组件什么时候 把数据传递给父组件-->
</template>

<script>
    import mui from '../../../lib/mui/js/mui.min.js';
    export default {
        name: "goodsinfo_numbox",
        props : ['max'],
        mounted(){
            mui(".mui-numbox").numbox();
        },
        methods:{
            countChanged(){
                // 每当文本框的数据被修改的时候，立即把最新的数据，通过事件调用，传递给父组件
                this.$emit("getData", parseInt(this.$refs.number.value));
            }
        },
        watch:{
            max(newVal, oldVal){
                mui('.mui-numbox').numbox().setOption('max',newVal);
            }
        }

    }
</script>

<style scoped>

</style>